import { TILE_TYPE_ENUM } from '../Enums'
import level1 from './level1'
import level2 from './level2'

import { DIRECTION, PLAYER_STATE_TYPE_ENUM, ENTITY_TYPE_ENUM } from '../Enums'

export interface IEntity {
  type: ENTITY_TYPE_ENUM
  x: number
  y: number
  direction: DIRECTION
  state: PLAYER_STATE_TYPE_ENUM
}

export interface ISpikes {
  type: ENTITY_TYPE_ENUM
  x: number
  y: number
  count: number
  totalCount: number
}

export interface IIile {
  src: number | null
  type: TILE_TYPE_ENUM | null
}

export interface ILevel {
  mapInfo: IIile[][]
  player: IEntity
  enemies: IEntity[]
  spikes: ISpikes[]
  bursts: IEntity[]
  door: IEntity
}

export const levels: Record<string, ILevel> = {
  level1,
  level2,
}

export default levels
